/**
 * 使用jwt管理token
 */
// 导入jsonwebtoken,生成jwt字符串的模块
const jwt = require("jsonwebtoken")
// 获取密钥
const { secretKey, expiresIn } = require("./config.js")
/**
 * 生成token
 * @param {String} uid 
 * @param {Number} scope 
 * @returns 
 */
function generateToken(uid, scope) {
    // 生成token使用jwt的sign方法
    return jwt.sign({ uid, scope }, secretKey, { expiresIn })
}

function verifyToken(token) {
    try {
        // token认证,使用jwt的verify方法
        return jwt.verify(token, secretKey)
    } catch (e) {
        return false
    }
}

module.exports = { generateToken, verifyToken }